/*
 * App loading animation - from: Codrops (https://tympanus.net/codrops/)
 */

#app-loading .bar {
    font-size: 20px;
    width: 10em;
    height: 1em;
    position: relative;
    margin: 350px auto;
    border-radius: .5em;
    background: rgba(255,255,255,0.6);
    box-shadow: 
        0 0 0 .05em rgba(100,100,100,0.075),
        0 0 0 .25em rgba(0,0,0,0.1),
        inset 0 .1em .05em rgba(0,0,0,0.1),
        0 .05em rgba(255,255,255,0.7);
}

#app-loading .bar:after {
    content: "加载中 ...";
    position: absolute;
    left: 30%;
    top: 150%;
    font-family: 'Carrois Gothic', sans-serif;
    font-size: 1em;
    color: #555;
    text-shadow: 0 .05em rgba(255,255,255,0.7);
}

#app-loading .bar .sphere {
    border-radius: 50%;
    width: 1em;
    height: 100%;
    background: -webkit-linear-gradient(#eee, #ddd);
    background: linear-gradient(#eee, #ddd);
    box-shadow:
        inset 0 .15em .1em rgba(255,255,255,0.3),
        inset 0 -.1em .15em rgba(0,0,0,0.15),
        0 0 .25em rgba(0,0,0,0.3);
    display: block;
    -webkit-animation: slide 1.75s ease-in-out infinite alternate;
    animation: slide 1.75s ease-in-out infinite alternate;
}

@-webkit-keyframes slide {
    from { }
    to { margin-left: 90%; }
}

@keyframes slide {
    from { }
    to { margin-left: 90%; }
}

/* End of App loading animation ----------------------------------------------------------------------------------------------- */


body {
  font-size: .875rem;
  font-family: 'Microsoft Yahei', Tahoma, Arial, SimSun, 'Hiragino Sans GB', PMingLiu, Verdana, sans-serif;
}

.feather {
  width: 16px;
  height: 16px;
  vertical-align: text-bottom;
}

a.text-muted .feather {
  color: #999!important;
}

a.text-muted:hover .feather {
  color: inherit!important;
}

.diabled {
  pointer-events: none;
}

/*
 * Sidebar
 */

.sidebar {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 100; /* Behind the navbar */
  padding: 48px 0 0; /* Height of navbar */
  box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
}

.sidebar-sticky {
  position: relative;
  top: 0;
  height: calc(100vh - 48px);
  padding-top: .5rem;
  overflow-x: hidden;
  overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
}

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sidebar-sticky {
    position: -webkit-sticky;
    position: sticky;
  }
}

.sidebar .nav-link {
  font-weight: 500;
  color: #333;
}

.sidebar .nav-link .feather {
  margin-right: 4px;
  color: #999;
}

.sidebar .nav-link.active {
  color: #007bff;
}

.sidebar .nav-link:hover .feather,
.sidebar .nav-link.active .feather {
  color: inherit;
}

.sidebar-heading {
  font-size: .75rem;
  text-transform: uppercase;
}


/*
 * Content
 */

[role="main"] {
  padding-top: 133px; /* Space for fixed navbar */
}

@media (min-width: 768px) {
  [role="main"] {
    padding-top: 48px; /* Space for fixed navbar */
  }
}


/*
 * Navbar
 */

nav.shadow {
  box-shadow: 0 .25rem .5rem rgba(0,0,0,.15)!important
}

.navbar .form-control {
  padding: .75rem 1rem;
  border-width: 0;
  border-radius: 0;
}

.navbar .nav-link {
  cursor: pointer;
}

.navbar-brand {
  padding-top: .75rem;
  padding-bottom: .75rem;
  font-size: 1rem;
  background-color: rgba(0, 0, 0, .25);
  box-shadow: inset -1px 0 0 rgba(0, 0, 0, .25);
}


/*
 * Login form
 */

#form-login {
  max-width: 360px;
  padding: 15px;
  margin: auto;
}

#form-login .form-control {
  position: relative;
  box-sizing: border-box;
  height: auto;
  padding: 10px;
  font-size: 16px;
}

#form-login input[type="text"] {
  margin-bottom: -1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

#form-login input[type="password"] {
  margin-bottom: 10px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

#form-login .form-control:focus {
  z-index: 2;
}


/*
 * Container
 */

#container {
  min-height: 600px;
}

#container > div {
  display: flex;
  flex-wrap: wrap;
}

#container > div > * {
  flex: 1 100%;
}


/*
 * .table-dark
 */

.table-dark .form-control {
  color: #fff;
  background-color: rgba(255, 255, 255, .4);
  border-color: rgba(255, 255, 255, .4);
}

.table-dark .form-control:focus {
  background-color: rgba(255, 255, 255, .1);
  border-color: rgba(255, 255, 255, .1);
  box-shadow: 0 0 0 3px rgba(255, 255, 255, .45);
}


/*
 * App table
 */

#app-table td {
  vertical-align: middle;
}


/*
 * Form
 */

label {
  cursor: pointer;
}

fieldset:disabled label {
  cursor: default;
}


/*
 * Invalid feeback
 */

.invalid-feedback {
  font-size: .875rem;
}

.invalid-feedback-muted {
  display: none;
}

/*
 * Unsorted
 */

#change-password {
  max-width: 550px;
  padding: 15px;
  margin: auto;
}

.pwd-input-container {
  position: relative;
}

.pwd-input-container > input {
  padding-right: 50px !important;
}

.pwd-toggle {
  position: absolute;
  right: 30px;
  top: 12px;
  cursor: pointer;
}